#ifndef A6_BOTTLING_PLANT_H
#define A6_BOTTLING_PLANT_H
#include <uC++.h>
#include "Printer.h"
#include "NameServer.h"
#include "Truck.h"
#include "VendingMachine.h"

_Task Truck;

_Task BottlingPlant 
{
    Printer& 	myPrinter;
    NameServer& myNameServer;
    unsigned int	myNumVendingMachines;
    unsigned int	myMaxShippedPerFlavour;
    unsigned int	myMaxStockPerFlavour;
	unsigned int	myTimeBetweenShipments;
	bool        	myClosingDown;
	unsigned int*	myShipments;
	void main();
public:
	BottlingPlant( Printer &prt, NameServer &nameServer, 
				   unsigned int numVendingMachines,
				   unsigned int maxShippedPerFlavour, 
				   unsigned int maxStockPerFlavour,
				   unsigned int timeBetweenShipments );
    ~BottlingPlant();
	bool getShipment( unsigned int cargo[] );
};

#endif
